﻿
/*
本文件由工具自动生成 请勿手动修改！！！
*/

using System;
using System.Collections.Generic;

namespace ServerBase.Protocol
{
    [Desc("奖励物品")]
    public partial class CLS_AwardItem
    {
        [Desc("类型 对应 EAwardType")]
        public short Type = 0;
        [Desc("奖励配置ID")]
        public int ConfigId = 0;
        [Desc("奖励数量")]
        public long Count = 0;
        [Desc("等级")]
        public int Level = 0;
    };
    [Desc("奖励物品列表")]
    public partial class CLS_ListAwardItem
    {
        [Desc("奖励物品列表")]
        public List<CLS_AwardItem> ListAward = new List<CLS_AwardItem>();
    };
    [Desc("当前数量和上限数量")]
    public partial class CLS_CountInfo
    {
        [Desc("当前")]
        public long Value = 0;
        [Desc("上限")]
        public long Limit = 0;
    };
    [Desc("需求数量和当前数量")]
    public partial class CLS_NeedInfo
    {
        [Desc("需求")]
        public long Need = 0;
        [Desc("当前")]
        public long Value = 0;
    };
    [Desc("当前数量和原来数量")]
    public partial class CLS_ValueChangeInfo
    {
        [Desc("原数值")]
        public long ValueOld = 0;
        [Desc("当前")]
        public long ValueNew = 0;
    };
    [Desc("类示例")]
    public partial class CLS_BaseDemo
    {
        public byte a1 = 0;
        public short a2 = 0;
        public int a3 = 0;
        public long a4 = 0;
        public float a5 = 0.0f;
        public string a6 = "";
        public bool a7 = false;
        public DateTime d1 = DateTime.Now;
        public TimeSpan d2 = new TimeSpan();
        public EnumBaseDemo BaseDemo = new EnumBaseDemo();
    };
    [Desc("示例")]
    public partial class C2G_Base_Demo : ProtocolMsgBase
    {
        public byte a1 = 0;
        public short a2 = 0;
        public int a3 = 0;
        public long a4 = 0;
        public float a5 = 0.0f;
        public string a6 = "";
        public bool a7 = false;
        public DateTime d1 = DateTime.Now;
        public TimeSpan d2 = new TimeSpan();
        public EnumBaseDemo eBaseDemo = new EnumBaseDemo();
        public CLS_BaseDemo BaseDemo = new CLS_BaseDemo();
        public C2G_Base_Demo() { ProtocolId = EProtocolId.C2G_BASE_DEMO; }
        public C2G_Base_Demo(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("示例")]
    public partial class G2C_Base_Demo : ProtocolMsgBase
    {
        public byte a1 = 0;
        public short a2 = 0;
        public int a3 = 0;
        public long a4 = 0;
        public float a5 = 0.0f;
        public string a6 = "";
        public bool a7 = false;
        public DateTime d1 = DateTime.Now;
        public TimeSpan d2 = new TimeSpan();
        public EnumBaseDemo eBaseDemo = new EnumBaseDemo();
        public CLS_BaseDemo BaseDemo = new CLS_BaseDemo();
        public G2C_Base_Demo() { ProtocolId = EProtocolId.G2C_BASE_DEMO; }
        public G2C_Base_Demo(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("结果返回")]
    public partial class G2C_Base_Result : ProtocolMsgBase
    {
        [Desc("协议ID")]
        public int HandleId = 0;
        public G2C_Base_Result() { ProtocolId = EProtocolId.G2C_BASE_RESULT; }
        public G2C_Base_Result(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("Ping服务器")]
    public partial class C2G_Base_Ping : ProtocolMsgBase
    {
        public C2G_Base_Ping() { ProtocolId = EProtocolId.C2G_BASE_PING; }
        public C2G_Base_Ping(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("Ping服务器")]
    public partial class G2C_Base_Ping : ProtocolMsgBase
    {
        [Desc("服务器时间刻度")]
        public DateTime ServerTime = DateTime.Now;
        public G2C_Base_Ping() { ProtocolId = EProtocolId.G2C_BASE_PING; }
        public G2C_Base_Ping(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("同步版本号")]
    public partial class C2G_Base_GameVersion : ProtocolMsgBase
    {
        public C2G_Base_GameVersion() { ProtocolId = EProtocolId.C2G_BASE_GAMEVERSION; }
        public C2G_Base_GameVersion(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("同步版本号")]
    public partial class G2C_Base_GameVersion : ProtocolMsgBase
    {
        [Desc("同步版本号")]
        public string GameVersion = "";
        public G2C_Base_GameVersion() { ProtocolId = EProtocolId.G2C_BASE_GAMEVERSION; }
        public G2C_Base_GameVersion(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("消息确认")]
    public partial class C2G_Base_Confirm : ProtocolMsgBase
    {
        public C2G_Base_Confirm() { ProtocolId = EProtocolId.C2G_BASE_CONFIRM; }
        public C2G_Base_Confirm(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("消息确认")]
    public partial class G2C_Base_Confirm : ProtocolMsgBase
    {
        public G2C_Base_Confirm() { ProtocolId = EProtocolId.G2C_BASE_CONFIRM; }
        public G2C_Base_Confirm(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("服务器负载信息")]
    public partial class CLS_ServerLoadInfo
    {
        [Desc("服务器配置ID")]
        public int ConfigId = 0;
        [Desc("服务器IP")]
        public string ServerIp = "";
        [Desc("服务器端口")]
        public int ServerPort = 0;
        [Desc("服务器状态")]
        public EServerState ServerState = new EServerState();
        [Desc("在线人数")]
        public int CountOnline = 0;
        [Desc("进程ID")]
        public int ProcessId = 0;
        [Desc("使用CPU")]
        public float Cpu = 0.0f;
        [Desc("使用内存")]
        public long Memory = 0;
        [Desc("使用线程")]
        public int Threads = 0;
    };
    [Desc("连接成功")]
    public partial class L2C_Login_Connect : ProtocolMsgBase
    {
        public L2C_Login_Connect() { ProtocolId = EProtocolId.L2C_LOGIN_CONNECT; }
        public L2C_Login_Connect(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 系统公告")]
    public partial class C2L_Login_NoticeSystem : ProtocolMsgBase
    {
        public C2L_Login_NoticeSystem() { ProtocolId = EProtocolId.C2L_LOGIN_NOTICESYSTEM; }
        public C2L_Login_NoticeSystem(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 系统公告")]
    public partial class L2C_Login_NoticeSystem : ProtocolMsgBase
    {
        [Desc("内容")]
        public string Text = "";
        public L2C_Login_NoticeSystem() { ProtocolId = EProtocolId.L2C_LOGIN_NOTICESYSTEM; }
        public L2C_Login_NoticeSystem(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 活动公告")]
    public partial class C2L_Login_NoticeActivity : ProtocolMsgBase
    {
        public C2L_Login_NoticeActivity() { ProtocolId = EProtocolId.C2L_LOGIN_NOTICEACTIVITY; }
        public C2L_Login_NoticeActivity(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 活动公告")]
    public partial class L2C_Login_NoticeActivity : ProtocolMsgBase
    {
        [Desc("内容")]
        public List<string> ListText = new List<string>();
        public L2C_Login_NoticeActivity() { ProtocolId = EProtocolId.L2C_LOGIN_NOTICEACTIVITY; }
        public L2C_Login_NoticeActivity(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("服务器信息")]
    public partial class CLS_ServerGameInfo
    {
        [Desc("服务器配置ID")]
        public int ConfigId = 0;
        [Desc("服务器IP")]
        public string ServerIp = "";
        [Desc("服务器端口")]
        public int ServerPort = 0;
        [Desc("服务器状态")]
        public EServerState ServerState = new EServerState();
        [Desc("在线人数")]
        public int CountOnline = 0;
        [Desc("玩家昵称")]
        public string PlayerName = "";
        [Desc("玩家等级")]
        public int PlayerLevel = 0;
        [Desc("服务器大区名称")]
        public string ServerArea = "";
        [Desc("服务器名称")]
        public string ServerName = "";
        [Desc("模拟服务器状态")]
        public int ServerStatus = 0;
        [Desc("是否推荐服务器")]
        public int Recommend = 0;
        [Desc("是否新服")]
        public int NewSever = 0;
    };
    [Desc("请求 登陆用户账号")]
    public partial class C2L_Login_UserLogin : ProtocolMsgBase
    {
        [Desc("账号")]
        public string Account = "";
        [Desc("密码")]
        public string Password = "";
        public C2L_Login_UserLogin() { ProtocolId = EProtocolId.C2L_LOGIN_USERLOGIN; }
        public C2L_Login_UserLogin(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 登陆用户账号")]
    public partial class L2C_Login_UserLogin : ProtocolMsgBase
    {
        [Desc("用户id")]
        public long Uuid = 0;
        [Desc("验证码")]
        public long Code = 0;
        [Desc("是否需要显示协议")]
        public bool NeedAgree = false;
        [Desc("服务器列表")]
        public Dictionary<int, CLS_ServerGameInfo> DictServer = new Dictionary<int, CLS_ServerGameInfo>();
        public L2C_Login_UserLogin() { ProtocolId = EProtocolId.L2C_LOGIN_USERLOGIN; }
        public L2C_Login_UserLogin(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 SDK登录")]
    public partial class C2L_Login_SdkLogin : ProtocolMsgBase
    {
        [Desc("平台序号")]
        public EPlatform Platform = new EPlatform();
        [Desc("平台参数 0=uid 1=token")]
        public List<string> ListArgs = new List<string>();
        public C2L_Login_SdkLogin() { ProtocolId = EProtocolId.C2L_LOGIN_SDKLOGIN; }
        public C2L_Login_SdkLogin(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 SDK登录")]
    public partial class L2C_Login_SdkLogin : ProtocolMsgBase
    {
        [Desc("平台序号")]
        public EPlatform Platform = new EPlatform();
        [Desc("平台参数")]
        public List<string> ListArgs = new List<string>();
        [Desc("用户id")]
        public long Uuid = 0;
        [Desc("验证码")]
        public long Code = 0;
        [Desc("是否需要显示协议")]
        public bool NeedAgree = false;
        [Desc("服务器列表")]
        public Dictionary<int, CLS_ServerGameInfo> DictServer = new Dictionary<int, CLS_ServerGameInfo>();
        public L2C_Login_SdkLogin() { ProtocolId = EProtocolId.L2C_LOGIN_SDKLOGIN; }
        public L2C_Login_SdkLogin(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("连接成功")]
    public partial class G2C_Login_Connect : ProtocolMsgBase
    {
        public G2C_Login_Connect() { ProtocolId = EProtocolId.G2C_LOGIN_CONNECT; }
        public G2C_Login_Connect(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 登陆玩家")]
    public partial class C2G_Login_PlayerLogin : ProtocolMsgBase
    {
        [Desc("用户id")]
        public long Uuid = 0;
        [Desc("验证码")]
        public long Code = 0;
        public C2G_Login_PlayerLogin() { ProtocolId = EProtocolId.C2G_LOGIN_PLAYERLOGIN; }
        public C2G_Login_PlayerLogin(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 登陆玩家")]
    public partial class G2C_Login_PlayerLogin : ProtocolMsgBase
    {
        public G2C_Login_PlayerLogin() { ProtocolId = EProtocolId.G2C_LOGIN_PLAYERLOGIN; }
        public G2C_Login_PlayerLogin(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 玩家创建")]
    public partial class C2G_Login_PlayerCreate : ProtocolMsgBase
    {
        [Desc("玩家名字")]
        public string Name = "";
        [Desc("性别 男性 女性")]
        public string Gender = "";
        [Desc("门派")]
        public string Family = "";
        public C2G_Login_PlayerCreate() { ProtocolId = EProtocolId.C2G_LOGIN_PLAYERCREATE; }
        public C2G_Login_PlayerCreate(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 玩家创建")]
    public partial class G2C_Login_PlayerCreate : ProtocolMsgBase
    {
        public G2C_Login_PlayerCreate() { ProtocolId = EProtocolId.G2C_LOGIN_PLAYERCREATE; }
        public G2C_Login_PlayerCreate(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("通知玩家被取代连接")]
    public partial class G2C_Login_Replaced : ProtocolMsgBase
    {
        public G2C_Login_Replaced() { ProtocolId = EProtocolId.G2C_LOGIN_REPLACED; }
        public G2C_Login_Replaced(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("通知玩家被封号")]
    public partial class G2C_Login_Ban : ProtocolMsgBase
    {
        public G2C_Login_Ban() { ProtocolId = EProtocolId.G2C_LOGIN_BAN; }
        public G2C_Login_Ban(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 检测名字")]
    public partial class C2G_Login_CheckName : ProtocolMsgBase
    {
        [Desc("玩家名字")]
        public string Name = "";
        public C2G_Login_CheckName() { ProtocolId = EProtocolId.C2G_LOGIN_CHECKNAME; }
        public C2G_Login_CheckName(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 检测名字")]
    public partial class G2C_Login_CheckName : ProtocolMsgBase
    {
        public G2C_Login_CheckName() { ProtocolId = EProtocolId.G2C_LOGIN_CHECKNAME; }
        public G2C_Login_CheckName(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 管理员使用PUID直接登录")]
    public partial class C2G_Login_PuidLogin : ProtocolMsgBase
    {
        public C2G_Login_PuidLogin() { ProtocolId = EProtocolId.C2G_LOGIN_PUIDLOGIN; }
        public C2G_Login_PuidLogin(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 管理员使用PUID直接登录")]
    public partial class G2C_Login_PuidLogin : ProtocolMsgBase
    {
        public G2C_Login_PuidLogin() { ProtocolId = EProtocolId.G2C_LOGIN_PUIDLOGIN; }
        public G2C_Login_PuidLogin(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("通知服务器即将关闭")]
    public partial class G2C_Login_ServerExit : ProtocolMsgBase
    {
        public G2C_Login_ServerExit() { ProtocolId = EProtocolId.G2C_LOGIN_SERVEREXIT; }
        public G2C_Login_ServerExit(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("玩家基本信息")]
    public partial class CLS_Info_Base
    {
        [Desc("唯一ID")]
        public long Puid = 0;
        [Desc("名字")]
        public string Name = "";
        [Desc("性别 男性 女性")]
        public string Gender = "";
        [Desc("门派")]
        public string Family = "";
        [Desc("头衔")]
        public string Title = "";
        [Desc("年龄")]
        public int Age = 0;
        [Desc("等级")]
        public int Level = 0;
        [Desc("经验值")]
        public long Exp = 0;
        [Desc("元宝")]
        public long Gem = 0;
        [Desc("金币")]
        public long Gold = 0;
        [Desc("潜能")]
        public long Pot = 0;
        [Desc("vip等级")]
        public int VipLevel = 0;
        [Desc("vip经验值")]
        public int VipExp = 0;
    };
    [Desc("玩家杂项信息")]
    public partial class CLS_Info_Misc
    {
        [Desc("服务器配置ID")]
        public int ServerConfigId = 0;
        [Desc("服务器时间")]
        public DateTime ServerTime = DateTime.Now;
        [Desc("开服时间")]
        public DateTime ServerTimeOpen = DateTime.Now;
        [Desc("注册时间")]
        public DateTime DtRegister = DateTime.Now;
        [Desc("客户端特殊标记")]
        public Dictionary<int, int> DictFlagClient = new Dictionary<int, int>();
        [Desc("客户端特殊标记每日刷新")]
        public Dictionary<int, int> DictFlagClientDaily = new Dictionary<int, int>();
        [Desc("标记")]
        public Dictionary<int, int> DictFlagInt = new Dictionary<int, int>();
        [Desc("标记")]
        public Dictionary<int, bool> DictFlagBool = new Dictionary<int, bool>();
    };
    [Desc("玩家游戏信息")]
    public partial class CLS_Info_Game
    {
    };
    [Desc("玩家属性信息")]
    public partial class CLS_Info_Prop
    {
        public int str = 0;
        public int itn = 0;
        public int con = 0;
        public int spi = 0;
        public int cps = 0;
        public int cor = 0;
        public int per = 0;
        public int kar = 0;
        public int kee = 0;
        public int sen = 0;
        public int force = 0;
        public int mana = 0;
        public int food = 0;
        public int water = 0;
        public int efkee = 0;
        public int efsen = 0;
        public int mxkee = 0;
        public int mxsen = 0;
        public int mxforce = 0;
        public int mxmana = 0;
        public int mxfood = 0;
        public int mxwater = 0;
        public int adstr = 0;
        public int aditn = 0;
        public int adcon = 0;
        public int adspi = 0;
        public int adcps = 0;
        public int adcor = 0;
        public int adper = 0;
        public int adkar = 0;
        public int adkee = 0;
        public int adsen = 0;
        public int adforce = 0;
        public int admana = 0;
        public int adfood = 0;
        public int adwater = 0;
        public int damage = 0;
        public int armor = 0;
        public int cattack = 0;
        public int cdefence = 0;
        public int cdodge = 0;
        public int cparry = 0;
        public int cforce = 0;
        public int cspell = 0;
        public long cbtdamage = 0;
        public long cbtarmor = 0;
        public long cbtattack = 0;
        public long cbtdefence = 0;
        public long cbtdodge = 0;
        public long cbtparry = 0;
        public long cbtforce = 0;
        public long cbtspell = 0;
    };
    [Desc("请求 玩家全部信息")]
    public partial class C2G_Info_GetAll : ProtocolMsgBase
    {
        public C2G_Info_GetAll() { ProtocolId = EProtocolId.C2G_INFO_GETALL; }
        public C2G_Info_GetAll(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 玩家全部信息")]
    public partial class G2C_Info_GetAll : ProtocolMsgBase
    {
        public CLS_Info_Base InfoBase = new CLS_Info_Base();
        public CLS_Info_Misc InfoMisc = new CLS_Info_Misc();
        public CLS_Info_Game InfoGame = new CLS_Info_Game();
        public CLS_Info_Prop InfoProp = new CLS_Info_Prop();
        public Dictionary<int, int> DictProp = new Dictionary<int, int>();
        public G2C_Info_GetAll() { ProtocolId = EProtocolId.G2C_INFO_GETALL; }
        public G2C_Info_GetAll(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("推送 玩家信息 全部")]
    public partial class G2C_Info_PushAll : ProtocolMsgBase
    {
        public CLS_Info_Base InfoBase = new CLS_Info_Base();
        public CLS_Info_Misc InfoMisc = new CLS_Info_Misc();
        public CLS_Info_Game InfoGame = new CLS_Info_Game();
        public CLS_Info_Prop InfoProp = new CLS_Info_Prop();
        public Dictionary<int, int> DictProp = new Dictionary<int, int>();
        public G2C_Info_PushAll() { ProtocolId = EProtocolId.G2C_INFO_PUSHALL; }
        public G2C_Info_PushAll(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("推送 玩家信息 基础")]
    public partial class G2C_Info_PushBase : ProtocolMsgBase
    {
        public CLS_Info_Base InfoBase = new CLS_Info_Base();
        public CLS_Info_Misc InfoMisc = new CLS_Info_Misc();
        public CLS_Info_Prop InfoProp = new CLS_Info_Prop();
        public Dictionary<int, int> DictProp = new Dictionary<int, int>();
        public G2C_Info_PushBase() { ProtocolId = EProtocolId.G2C_INFO_PUSHBASE; }
        public G2C_Info_PushBase(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 更改客户端特殊标记")]
    public partial class C2G_Info_ChangeFlagClient : ProtocolMsgBase
    {
        public int FlagKey = 0;
        public int FlagValue = 0;
        public C2G_Info_ChangeFlagClient() { ProtocolId = EProtocolId.C2G_INFO_CHANGEFLAGCLIENT; }
        public C2G_Info_ChangeFlagClient(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 更改客户端特殊标记")]
    public partial class G2C_Info_ChangeFlagClient : ProtocolMsgBase
    {
        public int FlagKey = 0;
        public int FlagValue = 0;
        public G2C_Info_ChangeFlagClient() { ProtocolId = EProtocolId.G2C_INFO_CHANGEFLAGCLIENT; }
        public G2C_Info_ChangeFlagClient(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 更改客户端特殊标记每日")]
    public partial class C2G_Info_ChangeFlagClientDaily : ProtocolMsgBase
    {
        public int FlagKey = 0;
        public int FlagValue = 0;
        public C2G_Info_ChangeFlagClientDaily() { ProtocolId = EProtocolId.C2G_INFO_CHANGEFLAGCLIENTDAILY; }
        public C2G_Info_ChangeFlagClientDaily(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 更改客户端特殊标记每日")]
    public partial class G2C_Info_ChangeFlagClientDaily : ProtocolMsgBase
    {
        public int FlagKey = 0;
        public int FlagValue = 0;
        public G2C_Info_ChangeFlagClientDaily() { ProtocolId = EProtocolId.G2C_INFO_CHANGEFLAGCLIENTDAILY; }
        public G2C_Info_ChangeFlagClientDaily(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("玩家基本信息")]
    public partial class CLS_Info_Player
    {
        [Desc("玩家唯一ID")]
        public long Puid = 0;
        [Desc("昵称")]
        public string Name = "";
        [Desc("性别 男性 女性")]
        public string Gender = "";
        [Desc("门派")]
        public string Family = "";
        [Desc("在线")]
        public bool IsOnline = false;
    };
    [Desc("请求 玩家单条信息")]
    public partial class C2G_Info_PlayerFind : ProtocolMsgBase
    {
        [Desc("唯一ID")]
        public long Id = 0;
        public C2G_Info_PlayerFind() { ProtocolId = EProtocolId.C2G_INFO_PLAYERFIND; }
        public C2G_Info_PlayerFind(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 玩家单条信息")]
    public partial class G2C_Info_PlayerFind : ProtocolMsgBase
    {
        [Desc("玩家单条信息")]
        public CLS_Info_Player InfoPlayer = new CLS_Info_Player();
        public G2C_Info_PlayerFind() { ProtocolId = EProtocolId.G2C_INFO_PLAYERFIND; }
        public G2C_Info_PlayerFind(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 系统公告")]
    public partial class C2G_Notice_System : ProtocolMsgBase
    {
        public C2G_Notice_System() { ProtocolId = EProtocolId.C2G_NOTICE_SYSTEM; }
        public C2G_Notice_System(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 系统公告")]
    public partial class G2C_Notice_System : ProtocolMsgBase
    {
        [Desc("内容")]
        public string Text = "";
        public G2C_Notice_System() { ProtocolId = EProtocolId.G2C_NOTICE_SYSTEM; }
        public G2C_Notice_System(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 活动公告")]
    public partial class C2G_Notice_Activity : ProtocolMsgBase
    {
        public C2G_Notice_Activity() { ProtocolId = EProtocolId.C2G_NOTICE_ACTIVITY; }
        public C2G_Notice_Activity(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 活动公告")]
    public partial class G2C_Notice_Activity : ProtocolMsgBase
    {
        [Desc("内容")]
        public List<string> ListText = new List<string>();
        public G2C_Notice_Activity() { ProtocolId = EProtocolId.G2C_NOTICE_ACTIVITY; }
        public G2C_Notice_Activity(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("走马灯信息")]
    public partial class CLS_NoticeRolling
    {
        [Desc("走马灯类型 见ENoticeRollingType")]
        public byte Type = 0;
        [Desc("内容")]
        public string Text = "";
        [Desc("播放次数")]
        public int Count = 0;
    };
    [Desc("发送 走马灯")]
    public partial class G2C_Notice_Rolling : ProtocolMsgBase
    {
        public List<CLS_NoticeRolling> ListNoticeRolling = new List<CLS_NoticeRolling>();
        public G2C_Notice_Rolling() { ProtocolId = EProtocolId.G2C_NOTICE_ROLLING; }
        public G2C_Notice_Rolling(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("动态日志")]
    public partial class CLS_GameLog
    {
        public DateTime GameLogTime = DateTime.Now;
        [Desc("动态日志类型 EGameLogType")]
        public EGameLogType GameLogType = new EGameLogType();
        [Desc("参数")]
        public List<string> Args = new List<string>();
    };
    [Desc("即时推送")]
    public partial class CLS_GameNotify
    {
        [Desc("即时推送类型 EGameNotifyType")]
        public EGameNotifyType GameNotifyType = new EGameNotifyType();
        [Desc("参数")]
        public List<string> Args = new List<string>();
    };
    [Desc("通知 即时推送")]
    public partial class G2C_Info_PushGameNotify : ProtocolMsgBase
    {
        [Desc("即时推送信息")]
        public CLS_GameNotify GameNotify = new CLS_GameNotify();
        public G2C_Info_PushGameNotify() { ProtocolId = EProtocolId.G2C_INFO_PUSHGAMENOTIFY; }
        public G2C_Info_PushGameNotify(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 客户端获取配置文本")]
    public partial class C2G_Info_GetConfText : ProtocolMsgBase
    {
        public C2G_Info_GetConfText() { ProtocolId = EProtocolId.C2G_INFO_GETCONFTEXT; }
        public C2G_Info_GetConfText(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 客户端获取配置文本")]
    public partial class G2C_Info_GetConfText : ProtocolMsgBase
    {
        [Desc("配置文件文本列表")]
        public Dictionary<string, string> DictConfText = new Dictionary<string, string>();
        public G2C_Info_GetConfText() { ProtocolId = EProtocolId.G2C_INFO_GETCONFTEXT; }
        public G2C_Info_GetConfText(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("邮件信息")]
    public partial class CLS_MailInfo
    {
        [Desc("邮件ID")]
        public long Id = 0;
        [Desc("邮件类型 EMailType")]
        public EMailType MailType = new EMailType();
        [Desc("标题")]
        public string Title = "";
        [Desc("是否有附件")]
        public bool HasAttachments = false;
        [Desc("已读")]
        public bool Readed = false;
        [Desc("已领")]
        public bool Got = false;
        [Desc("保存")]
        public bool Saved = false;
        [Desc("发送时间")]
        public DateTime CreateTime = DateTime.Now;
        [Desc("已发邮件")]
        public bool Sended = false;
        [Desc("收件人(已发邮件生效 个人邮件:名字 郡邮件:郡ID 府邮件:府ID)")]
        public string ReceiveName = "";
        [Desc("发件人名字")]
        public string SenderName = "";
    };
    [Desc("邮件信息 详细")]
    public partial class CLS_MailInfoDetails
    {
        [Desc("邮件ID")]
        public long Id = 0;
        [Desc("邮件信息")]
        public CLS_MailInfo MailInfo = new CLS_MailInfo();
        [Desc("正文")]
        public string Body = "";
        [Desc("附件列表")]
        public List<CLS_AwardItem> listAward = new List<CLS_AwardItem>();
    };
    [Desc("邮件信息 发送")]
    public partial class CLS_MailInfoSend
    {
        public EMailType MailType = new EMailType();
        [Desc("标题")]
        public string Title = "";
        [Desc("正文")]
        public string Body = "";
        [Desc("发件人名字")]
        public string SenderName = "";
        [Desc("收件人名字")]
        public string ReceiveName = "";
    };
    [Desc("请求 邮件列表")]
    public partial class C2G_Mail_List : ProtocolMsgBase
    {
        public C2G_Mail_List() { ProtocolId = EProtocolId.C2G_MAIL_LIST; }
        public C2G_Mail_List(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 邮件列表")]
    public partial class G2C_Mail_List : ProtocolMsgBase
    {
        [Desc("邮件列表")]
        public List<CLS_MailInfo> ListMail = new List<CLS_MailInfo>();
        public G2C_Mail_List() { ProtocolId = EProtocolId.G2C_MAIL_LIST; }
        public G2C_Mail_List(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 邮件读取")]
    public partial class C2G_Mail_Read : ProtocolMsgBase
    {
        [Desc("邮件ID")]
        public long Id = 0;
        public C2G_Mail_Read() { ProtocolId = EProtocolId.C2G_MAIL_READ; }
        public C2G_Mail_Read(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 邮件读取")]
    public partial class G2C_Mail_Read : ProtocolMsgBase
    {
        [Desc("邮件ID")]
        public long Id = 0;
        [Desc("邮件信息详细")]
        public CLS_MailInfoDetails Details = new CLS_MailInfoDetails();
        public G2C_Mail_Read() { ProtocolId = EProtocolId.G2C_MAIL_READ; }
        public G2C_Mail_Read(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 邮件领取附件")]
    public partial class C2G_Mail_Get : ProtocolMsgBase
    {
        [Desc("邮件ID")]
        public long Id = 0;
        public C2G_Mail_Get() { ProtocolId = EProtocolId.C2G_MAIL_GET; }
        public C2G_Mail_Get(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 邮件领取附件")]
    public partial class G2C_Mail_Get : ProtocolMsgBase
    {
        [Desc("邮件ID")]
        public long Id = 0;
        [Desc("附件列表")]
        public List<CLS_AwardItem> listAward = new List<CLS_AwardItem>();
        public G2C_Mail_Get() { ProtocolId = EProtocolId.G2C_MAIL_GET; }
        public G2C_Mail_Get(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 邮件一键领取")]
    public partial class C2G_Mail_GetAll : ProtocolMsgBase
    {
        public C2G_Mail_GetAll() { ProtocolId = EProtocolId.C2G_MAIL_GETALL; }
        public C2G_Mail_GetAll(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 邮件一键领取")]
    public partial class G2C_Mail_GetAll : ProtocolMsgBase
    {
        [Desc("附件列表")]
        public List<CLS_AwardItem> listAward = new List<CLS_AwardItem>();
        public G2C_Mail_GetAll() { ProtocolId = EProtocolId.G2C_MAIL_GETALL; }
        public G2C_Mail_GetAll(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 邮件删除")]
    public partial class C2G_Mail_Delete : ProtocolMsgBase
    {
        [Desc("邮件ID")]
        public long Id = 0;
        public C2G_Mail_Delete() { ProtocolId = EProtocolId.C2G_MAIL_DELETE; }
        public C2G_Mail_Delete(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 邮件删除")]
    public partial class G2C_Mail_Delete : ProtocolMsgBase
    {
        [Desc("邮件ID")]
        public long Id = 0;
        public G2C_Mail_Delete() { ProtocolId = EProtocolId.G2C_MAIL_DELETE; }
        public G2C_Mail_Delete(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 邮件清理已读")]
    public partial class C2G_Mail_DeleteReaded : ProtocolMsgBase
    {
        [Desc("要删除的当前页面类型")]
        public short MailType = 0;
        public C2G_Mail_DeleteReaded() { ProtocolId = EProtocolId.C2G_MAIL_DELETEREADED; }
        public C2G_Mail_DeleteReaded(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 邮件清理已读")]
    public partial class G2C_Mail_DeleteReaded : ProtocolMsgBase
    {
        [Desc("刷新后邮件列表")]
        public List<CLS_MailInfo> ListMail = new List<CLS_MailInfo>();
        public G2C_Mail_DeleteReaded() { ProtocolId = EProtocolId.G2C_MAIL_DELETEREADED; }
        public G2C_Mail_DeleteReaded(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 邮件保存/取消保存")]
    public partial class C2G_Mail_Save : ProtocolMsgBase
    {
        [Desc("邮件ID")]
        public long Id = 0;
        public C2G_Mail_Save() { ProtocolId = EProtocolId.C2G_MAIL_SAVE; }
        public C2G_Mail_Save(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 邮件保存/取消保存")]
    public partial class G2C_Mail_Save : ProtocolMsgBase
    {
        [Desc("邮件ID")]
        public long Id = 0;
        public G2C_Mail_Save() { ProtocolId = EProtocolId.G2C_MAIL_SAVE; }
        public G2C_Mail_Save(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 邮件发送")]
    public partial class C2G_Mail_Send : ProtocolMsgBase
    {
        [Desc("邮件发送信息")]
        public CLS_MailInfoSend MailInfoSend = new CLS_MailInfoSend();
        public C2G_Mail_Send() { ProtocolId = EProtocolId.C2G_MAIL_SEND; }
        public C2G_Mail_Send(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 邮件发送")]
    public partial class G2C_Mail_Send : ProtocolMsgBase
    {
        [Desc("新加的已发邮件列表")]
        public CLS_MailInfo MailInfo = new CLS_MailInfo();
        public G2C_Mail_Send() { ProtocolId = EProtocolId.G2C_MAIL_SEND; }
        public G2C_Mail_Send(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("文本信息")]
    public partial class G2C_Game_Message : ProtocolMsgBase
    {
        [Desc("信息")]
        public string Text = "";
        public G2C_Game_Message() { ProtocolId = EProtocolId.G2C_GAME_MESSAGE; }
        public G2C_Game_Message(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("聊天信息")]
    public partial class CLS_ChatMsg
    {
        [Desc("类型")]
        public EChatType ChatType = new EChatType();
        [Desc("文本")]
        public string Text = "";
        [Desc("发送者昵称")]
        public string Sender = "";
    };
    [Desc("请求 聊天信息发送")]
    public partial class C2G_Chat_Send : ProtocolMsgBase
    {
        [Desc("类型")]
        public EChatType ChatType = new EChatType();
        [Desc("文本")]
        public string Text = "";
        public C2G_Chat_Send() { ProtocolId = EProtocolId.C2G_CHAT_SEND; }
        public C2G_Chat_Send(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 聊天信息发送")]
    public partial class G2C_Chat_Send : ProtocolMsgBase
    {
        public G2C_Chat_Send() { ProtocolId = EProtocolId.G2C_CHAT_SEND; }
        public G2C_Chat_Send(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("通知 聊天信息接收")]
    public partial class G2C_Chat_Receive : ProtocolMsgBase
    {
        [Desc("聊天信息")]
        public CLS_ChatMsg Msg = new CLS_ChatMsg();
        public G2C_Chat_Receive() { ProtocolId = EProtocolId.G2C_CHAT_RECEIVE; }
        public G2C_Chat_Receive(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("出口信息")]
    public partial class CLS_Room_InfoExit
    {
        [Desc("方向")]
        public string Dir = "";
        [Desc("ID（世界坐标）")]
        public long RoomUid = 0;
        [Desc("配置ID")]
        public string RoomConfigId = "";
    };
    [Desc("玩家信息")]
    public partial class CLS_Room_InfoPlayer
    {
        [Desc("唯一ID")]
        public long Puid = 0;
        [Desc("名字")]
        public string Name = "";
        [Desc("长名字")]
        public string Desc = "";
    };
    [Desc("房间信息")]
    public partial class CLS_Room_InfoRoom
    {
        [Desc("ID（世界坐标）")]
        public long Uid = 0;
        [Desc("配置ID")]
        public string ConfigId = "";
        [Desc("出口列表")]
        public List<CLS_Room_InfoExit> ListExit = new List<CLS_Room_InfoExit>();
        [Desc("道具列表")]
        public Dictionary<string, CLS_Item_Info> DictItem = new Dictionary<string, CLS_Item_Info>();
        [Desc("装备列表")]
        public Dictionary<long, CLS_Equip_Info> DictEquip = new Dictionary<long, CLS_Equip_Info>();
        [Desc("NPC列表")]
        public Dictionary<long, CLS_Room_InfoNpc> DictNpc = new Dictionary<long, CLS_Room_InfoNpc>();
        [Desc("玩家列表")]
        public Dictionary<long, CLS_Room_InfoPlayer> DictPlayer = new Dictionary<long, CLS_Room_InfoPlayer>();
    };
    [Desc("请求 房间信息")]
    public partial class C2G_Room_Info : ProtocolMsgBase
    {
        public C2G_Room_Info() { ProtocolId = EProtocolId.C2G_ROOM_INFO; }
        public C2G_Room_Info(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 推送 房间信息")]
    public partial class G2C_Room_Info : ProtocolMsgBase
    {
        [Desc("房间信息")]
        public CLS_Room_InfoRoom RoomInfo = new CLS_Room_InfoRoom();
        public G2C_Room_Info() { ProtocolId = EProtocolId.G2C_ROOM_INFO; }
        public G2C_Room_Info(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 推送 房间内容")]
    public partial class G2C_Room_RoomThing : ProtocolMsgBase
    {
        [Desc("房间信息")]
        public CLS_Room_InfoRoom RoomInfo = new CLS_Room_InfoRoom();
        public G2C_Room_RoomThing() { ProtocolId = EProtocolId.G2C_ROOM_ROOMTHING; }
        public G2C_Room_RoomThing(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 飞")]
    public partial class C2G_Room_Fly : ProtocolMsgBase
    {
        [Desc("城市")]
        public string City = "";
        public C2G_Room_Fly() { ProtocolId = EProtocolId.C2G_ROOM_FLY; }
        public C2G_Room_Fly(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 飞")]
    public partial class G2C_Room_Fly : ProtocolMsgBase
    {
        [Desc("城市")]
        public string City = "";
        public G2C_Room_Fly() { ProtocolId = EProtocolId.G2C_ROOM_FLY; }
        public G2C_Room_Fly(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 移动")]
    public partial class C2G_Room_Go : ProtocolMsgBase
    {
        [Desc("方向")]
        public string Dir = "";
        public C2G_Room_Go() { ProtocolId = EProtocolId.C2G_ROOM_GO; }
        public C2G_Room_Go(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 飞")]
    public partial class G2C_Room_Go : ProtocolMsgBase
    {
        [Desc("方向")]
        public string Dir = "";
        public G2C_Room_Go() { ProtocolId = EProtocolId.G2C_ROOM_GO; }
        public G2C_Room_Go(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("道具信息")]
    public partial class CLS_Item_Info
    {
        [Desc("配置")]
        public string ConfigId = "";
        [Desc("数量")]
        public long Count = 0;
        [Desc("名字")]
        public string Name = "";
    };
    [Desc("请求 拾取")]
    public partial class C2G_Item_Get : ProtocolMsgBase
    {
        [Desc("配置Id")]
        public string ConfigId = "";
        public C2G_Item_Get() { ProtocolId = EProtocolId.C2G_ITEM_GET; }
        public C2G_Item_Get(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 拾取")]
    public partial class G2C_Item_Get : ProtocolMsgBase
    {
        [Desc("配置Id")]
        public string ConfigId = "";
        public G2C_Item_Get() { ProtocolId = EProtocolId.G2C_ITEM_GET; }
        public G2C_Item_Get(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 丢弃")]
    public partial class C2G_Item_Drop : ProtocolMsgBase
    {
        [Desc("配置Id")]
        public string ConfigId = "";
        [Desc("数量")]
        public long Amount = 0;
        public C2G_Item_Drop() { ProtocolId = EProtocolId.C2G_ITEM_DROP; }
        public C2G_Item_Drop(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 丢弃")]
    public partial class G2C_Item_Drop : ProtocolMsgBase
    {
        [Desc("配置Id")]
        public string ConfigId = "";
        [Desc("数量")]
        public long Amount = 0;
        [Desc("道具列表")]
        public Dictionary<string, CLS_Item_Info> DictItem = new Dictionary<string, CLS_Item_Info>();
        public G2C_Item_Drop() { ProtocolId = EProtocolId.G2C_ITEM_DROP; }
        public G2C_Item_Drop(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 使用")]
    public partial class C2G_Item_Use : ProtocolMsgBase
    {
        [Desc("配置Id")]
        public string ConfigId = "";
        public C2G_Item_Use() { ProtocolId = EProtocolId.C2G_ITEM_USE; }
        public C2G_Item_Use(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 使用")]
    public partial class G2C_Item_Use : ProtocolMsgBase
    {
        [Desc("配置Id")]
        public string ConfigId = "";
        [Desc("道具列表")]
        public Dictionary<string, CLS_Item_Info> DictItem = new Dictionary<string, CLS_Item_Info>();
        public G2C_Item_Use() { ProtocolId = EProtocolId.G2C_ITEM_USE; }
        public G2C_Item_Use(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("装备信息")]
    public partial class CLS_Equip_Info
    {
        [Desc("唯一ID")]
        public long Uid = 0;
        [Desc("配置")]
        public string ConfigId = "";
        [Desc("名字")]
        public string Name = "";
        [Desc("是否穿戴")]
        public bool Wear = false;
    };
    [Desc("装备信息")]
    public partial class CLS_Equip_InfoAll
    {
        [Desc("唯一ID")]
        public long Uid = 0;
        [Desc("配置")]
        public string ConfigId = "";
        [Desc("名字")]
        public string Name = "";
        [Desc("描述")]
        public string Desc = "";
    };
    [Desc("请求 拾取")]
    public partial class C2G_Equip_Get : ProtocolMsgBase
    {
        [Desc("ID")]
        public long Uid = 0;
        public C2G_Equip_Get() { ProtocolId = EProtocolId.C2G_EQUIP_GET; }
        public C2G_Equip_Get(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 拾取")]
    public partial class G2C_Equip_Get : ProtocolMsgBase
    {
        [Desc("ID")]
        public long Uid = 0;
        public G2C_Equip_Get() { ProtocolId = EProtocolId.G2C_EQUIP_GET; }
        public G2C_Equip_Get(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 查看")]
    public partial class C2G_Equip_InfoRoom : ProtocolMsgBase
    {
        [Desc("ID")]
        public long Uid = 0;
        public C2G_Equip_InfoRoom() { ProtocolId = EProtocolId.C2G_EQUIP_INFOROOM; }
        public C2G_Equip_InfoRoom(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 查看")]
    public partial class G2C_Equip_InfoRoom : ProtocolMsgBase
    {
        [Desc("信息")]
        public CLS_Equip_InfoAll Info = new CLS_Equip_InfoAll();
        public G2C_Equip_InfoRoom() { ProtocolId = EProtocolId.G2C_EQUIP_INFOROOM; }
        public G2C_Equip_InfoRoom(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 查看")]
    public partial class C2G_Equip_InfoInv : ProtocolMsgBase
    {
        [Desc("ID")]
        public long Uid = 0;
        public C2G_Equip_InfoInv() { ProtocolId = EProtocolId.C2G_EQUIP_INFOINV; }
        public C2G_Equip_InfoInv(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 查看")]
    public partial class G2C_Equip_InfoInv : ProtocolMsgBase
    {
        [Desc("信息")]
        public CLS_Equip_InfoAll Info = new CLS_Equip_InfoAll();
        public G2C_Equip_InfoInv() { ProtocolId = EProtocolId.G2C_EQUIP_INFOINV; }
        public G2C_Equip_InfoInv(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 丢弃")]
    public partial class C2G_Equip_Drop : ProtocolMsgBase
    {
        [Desc("ID")]
        public long Uid = 0;
        public C2G_Equip_Drop() { ProtocolId = EProtocolId.C2G_EQUIP_DROP; }
        public C2G_Equip_Drop(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 丢弃")]
    public partial class G2C_Equip_Drop : ProtocolMsgBase
    {
        [Desc("ID")]
        public long Uid = 0;
        [Desc("装备列表")]
        public Dictionary<long, CLS_Equip_Info> DictEquip = new Dictionary<long, CLS_Equip_Info>();
        [Desc("实装列表")]
        public Dictionary<int, long> DictWear = new Dictionary<int, long>();
        public G2C_Equip_Drop() { ProtocolId = EProtocolId.G2C_EQUIP_DROP; }
        public G2C_Equip_Drop(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 装备")]
    public partial class C2G_Equip_Wear : ProtocolMsgBase
    {
        [Desc("ID")]
        public long Uid = 0;
        public C2G_Equip_Wear() { ProtocolId = EProtocolId.C2G_EQUIP_WEAR; }
        public C2G_Equip_Wear(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 装备")]
    public partial class G2C_Equip_Wear : ProtocolMsgBase
    {
        [Desc("装备列表")]
        public Dictionary<long, CLS_Equip_Info> DictEquip = new Dictionary<long, CLS_Equip_Info>();
        [Desc("实装列表")]
        public Dictionary<int, long> DictWear = new Dictionary<int, long>();
        public G2C_Equip_Wear() { ProtocolId = EProtocolId.G2C_EQUIP_WEAR; }
        public G2C_Equip_Wear(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 装备")]
    public partial class C2G_Equip_Change : ProtocolMsgBase
    {
        [Desc("Type")]
        public long Type = 0;
        [Desc("ID")]
        public long Uid = 0;
        public C2G_Equip_Change() { ProtocolId = EProtocolId.C2G_EQUIP_CHANGE; }
        public C2G_Equip_Change(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 装备")]
    public partial class G2C_Equip_Change : ProtocolMsgBase
    {
        [Desc("装备列表")]
        public Dictionary<long, CLS_Equip_Info> DictEquip = new Dictionary<long, CLS_Equip_Info>();
        [Desc("实装列表")]
        public Dictionary<int, long> DictWear = new Dictionary<int, long>();
        public G2C_Equip_Change() { ProtocolId = EProtocolId.G2C_EQUIP_CHANGE; }
        public G2C_Equip_Change(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 卸下")]
    public partial class C2G_Equip_Unwear : ProtocolMsgBase
    {
        [Desc("ID")]
        public long Uid = 0;
        public C2G_Equip_Unwear() { ProtocolId = EProtocolId.C2G_EQUIP_UNWEAR; }
        public C2G_Equip_Unwear(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 卸下")]
    public partial class G2C_Equip_Unwear : ProtocolMsgBase
    {
        [Desc("装备列表")]
        public Dictionary<long, CLS_Equip_Info> DictEquip = new Dictionary<long, CLS_Equip_Info>();
        [Desc("实装列表")]
        public Dictionary<int, long> DictWear = new Dictionary<int, long>();
        public G2C_Equip_Unwear() { ProtocolId = EProtocolId.G2C_EQUIP_UNWEAR; }
        public G2C_Equip_Unwear(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("NPC信息")]
    public partial class CLS_Room_InfoNpc
    {
        [Desc("唯一ID")]
        public long Uid = 0;
        [Desc("配置")]
        public string ConfigId = "";
        [Desc("名字")]
        public string Name = "";
        [Desc("长名字")]
        public string Long = "";
    };
    [Desc("请求 查看")]
    public partial class C2G_Npc_Look : ProtocolMsgBase
    {
        [Desc("ID")]
        public long Uid = 0;
        public C2G_Npc_Look() { ProtocolId = EProtocolId.C2G_NPC_LOOK; }
        public C2G_Npc_Look(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 查看")]
    public partial class G2C_Npc_Look : ProtocolMsgBase
    {
        [Desc("ID")]
        public long Uid = 0;
        public G2C_Npc_Look() { ProtocolId = EProtocolId.G2C_NPC_LOOK; }
        public G2C_Npc_Look(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 攻击")]
    public partial class C2G_Npc_Kill : ProtocolMsgBase
    {
        [Desc("ID")]
        public long Uid = 0;
        public C2G_Npc_Kill() { ProtocolId = EProtocolId.C2G_NPC_KILL; }
        public C2G_Npc_Kill(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 攻击")]
    public partial class G2C_Npc_Kill : ProtocolMsgBase
    {
        [Desc("ID")]
        public long Uid = 0;
        public G2C_Npc_Kill() { ProtocolId = EProtocolId.G2C_NPC_KILL; }
        public G2C_Npc_Kill(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("角色信息score")]
    public partial class CLS_InfoScore
    {
        [Desc("唯一ID")]
        public long Puid = 0;
        [Desc("元宝")]
        public long Gem = 0;
        [Desc("金币")]
        public long Gold = 0;
        [Desc("潜能")]
        public long Pot = 0;
        [Desc("vip等级")]
        public int VipLevel = 0;
        [Desc("vip经验值")]
        public int VipExp = 0;
        [Desc("名字")]
        public string Name = "";
        [Desc("性别 男性 女性")]
        public string Gender = "";
        [Desc("门派")]
        public string Family = "";
        [Desc("头衔")]
        public string Title = "";
        [Desc("年龄")]
        public int Age = 0;
        [Desc("等级")]
        public int Level = 0;
        [Desc("经验值")]
        public long Exp = 0;
        public Dictionary<int, int> DictProp = new Dictionary<int, int>();
        public Dictionary<int, long> DictPropCbt = new Dictionary<int, long>();
    };
    [Desc("请求 角色属性")]
    public partial class C2G_Char_Score : ProtocolMsgBase
    {
        public C2G_Char_Score() { ProtocolId = EProtocolId.C2G_CHAR_SCORE; }
        public C2G_Char_Score(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 角色属性")]
    public partial class G2C_Char_Score : ProtocolMsgBase
    {
        [Desc("score属性")]
        public CLS_InfoScore InfoScore = new CLS_InfoScore();
        public G2C_Char_Score() { ProtocolId = EProtocolId.G2C_CHAR_SCORE; }
        public G2C_Char_Score(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("挂机信息")]
    public partial class CLS_InfoOffline
    {
        [Desc("模式 0=不在挂机 1=外出修行 2=闭关修炼")]
        public int OfflineMode = 0;
        [Desc("挂机 开始时间")]
        public long OfflineTime = 0;
        [Desc("挂机已持续时间")]
        public string OfflineTs = "";
    };
    [Desc("请求 挂机信息")]
    public partial class C2G_Char_OfflineInfo : ProtocolMsgBase
    {
        public C2G_Char_OfflineInfo() { ProtocolId = EProtocolId.C2G_CHAR_OFFLINEINFO; }
        public C2G_Char_OfflineInfo(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 挂机信息")]
    public partial class G2C_Char_OfflineInfo : ProtocolMsgBase
    {
        [Desc("挂机信息")]
        public CLS_InfoOffline InfoOffline = new CLS_InfoOffline();
        public G2C_Char_OfflineInfo() { ProtocolId = EProtocolId.G2C_CHAR_OFFLINEINFO; }
        public G2C_Char_OfflineInfo(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 挂机")]
    public partial class C2G_Char_Offline : ProtocolMsgBase
    {
        [Desc("模式 0=不在挂机 1=外出修行 2=闭关修炼")]
        public int OfflineMode = 0;
        public C2G_Char_Offline() { ProtocolId = EProtocolId.C2G_CHAR_OFFLINE; }
        public C2G_Char_Offline(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 挂机")]
    public partial class G2C_Char_Offline : ProtocolMsgBase
    {
        [Desc("模式 0=不在挂机 1=外出修行 2=闭关修炼")]
        public int OfflineMode = 0;
        [Desc("挂机信息")]
        public CLS_InfoOffline InfoOffline = new CLS_InfoOffline();
        public G2C_Char_Offline() { ProtocolId = EProtocolId.G2C_CHAR_OFFLINE; }
        public G2C_Char_Offline(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 查看")]
    public partial class C2G_Char_Look : ProtocolMsgBase
    {
        [Desc("ID")]
        public long Uid = 0;
        public C2G_Char_Look() { ProtocolId = EProtocolId.C2G_CHAR_LOOK; }
        public C2G_Char_Look(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 查看")]
    public partial class G2C_Char_Look : ProtocolMsgBase
    {
        [Desc("ID")]
        public long Uid = 0;
        public G2C_Char_Look() { ProtocolId = EProtocolId.G2C_CHAR_LOOK; }
        public G2C_Char_Look(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 背包")]
    public partial class C2G_Char_Inv : ProtocolMsgBase
    {
        public C2G_Char_Inv() { ProtocolId = EProtocolId.C2G_CHAR_INV; }
        public C2G_Char_Inv(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 背包")]
    public partial class G2C_Char_Inv : ProtocolMsgBase
    {
        [Desc("道具列表")]
        public Dictionary<string, CLS_Item_Info> DictItem = new Dictionary<string, CLS_Item_Info>();
        [Desc("装备列表")]
        public Dictionary<long, CLS_Equip_Info> DictEquip = new Dictionary<long, CLS_Equip_Info>();
        [Desc("实装列表")]
        public Dictionary<int, long> DictWear = new Dictionary<int, long>();
        public G2C_Char_Inv() { ProtocolId = EProtocolId.G2C_CHAR_INV; }
        public G2C_Char_Inv(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("技能信息")]
    public partial class CLS_InfoSkill
    {
        [Desc("Id")]
        public string Id = "";
        [Desc("等级")]
        public int Level = 0;
    };
    [Desc("激发信息")]
    public partial class CLS_InfoUsage
    {
        [Desc("Usage")]
        public string Usage = "";
        [Desc("Skill")]
        public string Skill = "";
        [Desc("等级")]
        public int Level = 0;
    };
    [Desc("请求 技能列表")]
    public partial class C2G_Skill_List : ProtocolMsgBase
    {
        public C2G_Skill_List() { ProtocolId = EProtocolId.C2G_SKILL_LIST; }
        public C2G_Skill_List(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 技能列表")]
    public partial class G2C_Skill_List : ProtocolMsgBase
    {
        [Desc("列表")]
        public Dictionary<string, CLS_InfoSkill> DictSkill = new Dictionary<string, CLS_InfoSkill>();
        [Desc("列表")]
        public Dictionary<string, CLS_InfoUsage> DictUsage = new Dictionary<string, CLS_InfoUsage>();
        [Desc("列表")]
        public List<CLS_InfoSkill> ListSkill = new List<CLS_InfoSkill>();
        [Desc("列表")]
        public List<CLS_InfoUsage> ListUsage = new List<CLS_InfoUsage>();
        public G2C_Skill_List() { ProtocolId = EProtocolId.G2C_SKILL_LIST; }
        public G2C_Skill_List(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 技能升级")]
    public partial class C2G_Skill_Levelup : ProtocolMsgBase
    {
        [Desc("技能Id")]
        public string SkillId = "";
        public C2G_Skill_Levelup() { ProtocolId = EProtocolId.C2G_SKILL_LEVELUP; }
        public C2G_Skill_Levelup(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 技能升级")]
    public partial class G2C_Skill_Levelup : ProtocolMsgBase
    {
        [Desc("技能Id")]
        public string SkillId = "";
        [Desc("技能信息")]
        public CLS_InfoSkill Skill = new CLS_InfoSkill();
        public G2C_Skill_Levelup() { ProtocolId = EProtocolId.G2C_SKILL_LEVELUP; }
        public G2C_Skill_Levelup(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 激发")]
    public partial class C2G_Skill_UsageUse : ProtocolMsgBase
    {
        [Desc("Usage")]
        public string Usage = "";
        [Desc("Skill")]
        public string Skill = "";
        public C2G_Skill_UsageUse() { ProtocolId = EProtocolId.C2G_SKILL_USAGEUSE; }
        public C2G_Skill_UsageUse(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 激发")]
    public partial class G2C_Skill_UsageUse : ProtocolMsgBase
    {
        [Desc("Usage")]
        public string Usage = "";
        [Desc("Skill")]
        public string Skill = "";
        [Desc("列表")]
        public Dictionary<string, CLS_InfoUsage> DictUsage = new Dictionary<string, CLS_InfoUsage>();
        [Desc("列表")]
        public List<CLS_InfoUsage> ListUsage = new List<CLS_InfoUsage>();
        public G2C_Skill_UsageUse() { ProtocolId = EProtocolId.G2C_SKILL_USAGEUSE; }
        public G2C_Skill_UsageUse(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("返回 激发")]
    public partial class B2T_Gt_Start : ProtocolMsgBase
    {
        public B2T_Gt_Start() { ProtocolId = EProtocolId.B2T_GT_START; }
        public B2T_Gt_Start(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 GM功能")]
    public partial class B2G_Gt_Action : ProtocolMsgBase
    {
        [Desc("指令")]
        public string GtAction = "";
        [Desc("参数 用json解开")]
        public string GtArgs = "";
        public B2G_Gt_Action() { ProtocolId = EProtocolId.B2G_GT_ACTION; }
        public B2G_Gt_Action(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("请求 GM功能")]
    public partial class G2B_Gt_Action : ProtocolMsgBase
    {
        [Desc("指令")]
        public string GtAction = "";
        [Desc("参数 用json解开")]
        public string GtArgs = "";
        public G2B_Gt_Action() { ProtocolId = EProtocolId.G2B_GT_ACTION; }
        public G2B_Gt_Action(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("WebGm协议")]
    public partial class CLS_WebGm
    {
        [Desc("账号")]
        public string Account = "";
        [Desc("指令")]
        public string GtAction = "";
        [Desc("参数 用json解开")]
        public string GtArgs = "";
    };
    [Desc("WebGm协议")]
    public partial class B2T_Gt_End : ProtocolMsgBase
    {
        public B2T_Gt_End() { ProtocolId = EProtocolId.B2T_GT_END; }
        public B2T_Gt_End(byte[] buffer) { Unserialize(buffer); }
    };
    [Desc("服务器信息")]
    public partial class CLS_GtServerInfo
    {
        [Desc("服务器配置ID")]
        public int ConfigId = 0;
        [Desc("进程ID")]
        public int ProcessId = 0;
        [Desc("使用CPU")]
        public float Cpu = 0.0f;
        [Desc("使用内存")]
        public long Memory = 0;
        [Desc("使用线程")]
        public int Threads = 0;
        [Desc("是否限制登录")]
        public bool RestrictLogin = false;
        [Desc("在线人数")]
        public int CountOnline = 0;
    };
    [Desc("上传配置文件")]
    public partial class CLS_GtUploadConfig
    {
        [Desc("文件名")]
        public string FileName = "";
        [Desc("文件内容")]
        public string FileText = "";
    };
    [Desc("GM公告")]
    public partial class CLS_GtNotice
    {
        [Desc("系统公告")]
        public string NoticeSystem = "";
        [Desc("活动公告")]
        public string NoticeActivity = "";
    };
    [Desc("GM走马灯")]
    public partial class CLS_GtNoticeRolling
    {
        [Desc("唯一ID")]
        public long Uid = 0;
        [Desc("走马灯内容")]
        public string Text = "";
        [Desc("走马灯次数")]
        public int Count = 0;
        [Desc("发送时间")]
        public string TimeSend = "";
    };
    [Desc("GM邮件")]
    public partial class CLS_GtMail
    {
        [Desc("邮件ID")]
        public long Uid = 0;
        [Desc("邮件类型 EMailType")]
        public EMailType MailType = new EMailType();
        [Desc("接收者列表")]
        public List<long> ListTarget = new List<long>();
        [Desc("标题")]
        public string Title = "";
        [Desc("正文")]
        public string Body = "";
        [Desc("邮件发送者")]
        public string SenderName = "";
        [Desc("邮件创建时间")]
        public string CreateTime = "";
        [Desc("false=注册时间在发送邮件之前的才能收到全服邮件 true=无论是否在发邮件之前注册都能收到")]
        public bool AllTimeReceive = false;
        [Desc("附件列表")]
        public List<CLS_AwardItem> ListAttachments = new List<CLS_AwardItem>();
    };
    [Desc("玩家账号信息")]
    public partial class CLS_GtPlayerInfoUser
    {
        [Desc("玩家唯一ID")]
        public long Puid = 0;
        [Desc("账号Id")]
        public long Uuid = 0;
        [Desc("平台ID")]
        public int Platform = 0;
        [Desc("账号")]
        public string Account = "";
        [Desc("密码")]
        public string Password = "";
        [Desc("注册时间")]
        public DateTime TimeRegister = DateTime.Now;
        [Desc("上次登录时间")]
        public DateTime TimeLogin = DateTime.Now;
    };
    [Desc("玩家数据修改")]
    public partial class CLS_GtPlayerEdit
    {
        [Desc("玩家唯一ID或者玩家昵称")]
        public string Puid = "";
        [Desc("修改类型")]
        public string EditMode = "";
        [Desc("修改参数")]
        public string EditArg = "";
    };

}

